#ifndef __IPARASE_CALLBACK_H_INCLUDED__
#define __IPARASE_CALLBACK_H_INCLUDED__

#include <netinet/ip.h>
#include <netinet/tcp.h>
#include <netinet/udp.h>

#ifdef __cplusplus
extern "C" {
#endif

class packet_handler{

public:

	virtual void on_handle_ip(iphdr* ptr_ip) = 0;

	virtual void on_handle_tcp(iphdr* ptr_ip, tcphdr* ptr_tcp) = 0;

	virtual void on_handle_udp(iphdr* ptr_ip, udphdr* ptr_udp) = 0;

};

#ifdef __cplusplus
}
#endif

#endif // __IPARASE_CALLBACK_H_INCLUDED__
